home *** CD-ROM | disk | FTP | other *** search
- Path: maverick.tad.eds.com!nemesis!venkat
- From: venkat@nemesis.pln.rboc.eds.com (User Jdsmith)
- Newsgroups: gnu.g++,gnu.g++.help,comp.lang.c++
- Subject: Overloaded new operator in C++
- Date: 15 Feb 1996 22:23:10 GMT
- Organization: Somewhere in EDS...
- Message-ID: <4g0boe$c37@maverick.tad.eds.com>
- NNTP-Posting-Host: nemesis.pln.rboc.eds.com
- X-Newsreader: TIN [version 1.2 PL2]
-
- I am experiencing a problem with overloading the
- new operator when allocating an array of classes.
-
- I do the following and my overloaded new operator is
- called as expected:
-
- ptr = new ClassThatOverloadsNew;
-
- But when I do this:
-
- ptr = new ClassThatOverloadsNew[5];
-
- The default new operator is called.
-
- What needs to be done to get an overloaded new operator to be called
- when allocating an array of data types? Does C++ even allow this
- to be done? I have checked several C++ manuals and none explicitely
- state that this can be done (and none say that it cannot be done!).
- I assumed that the overloaded new operator would be called with the
- number of bytes (the first parameter) being set to:
-
- sizeof(class) * arrayCount
-
- But this is not the case. Does anybody know how to solve this problem?
- I'm sure it is supported and is simple to do, I just have not found the
- right documentation on how to do it. My assumptions have been wrong so
- far, so I need some help.
-
- Thanks in advance,
-
- John Smith
- Systems Engineer, Electronic Data Systems
-